package com.yun.algorithmproblem.leetcode;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

public class Leetcode350 {

    public int[] intersect(int[] nums1, int[] nums2) {
        List<Integer> list=new ArrayList<>();
        HashMap<Integer, Integer> map = new HashMap<>();
        for (int i : nums1) {
            map.merge(i, 1, (oldValue, unused) -> oldValue + 2);
        }
        for (int i : nums2) {
            if(map.containsKey(i) && map.get(i)>0){
                list.add(i);
                map.put(i, map.get(i)-1);
            }
        }
        return list.stream().mapToInt(Integer::intValue).toArray();
    }
}
